草庐IT

c++ - STL排序题

全部标签

Javascript数组按姓氏,名字排序

我在JavaScript中有以下数组,我需要按姓氏对它们进行排序。varnames=[JennyCraig,JohnHNewman,KellyYoung,Bob];结果将是:Bob,JennyCraig,JohnHNewman,KellyYoung关于如何做到这一点的任何例子? 最佳答案 试试这个:constnames=["JohnHNewman","BJennyCraig","BJennyCraig","Bob","AJennyCraig"];constcompareStrings=(a,b)=>{if(ab)return1;re

javascript - 在javascript中使用sortBy按值升序排序散列

我用了sortByunderscore.js库中的函数。我有散列,我尝试按以下值对它进行排序:varobj={x:2,y:6,z:1,q:4};_.sortBy(obj)但是输出如下:[1,2,4,6]但我需要对其进行排序,并返回具有以下值的键:{z:1,x:2,q:4,y:6}如何使用sortBy返回排序后的哈希值?我注意到sortBy函数返回列表,那么是否有另一个好的解决方案来排序哈希或者我需要实现函数返回排序后的哈希? 最佳答案 在JavaScript中没有排序哈希(对象)这样的东西。您可以做的是将键放入数组中,对其进行迭代并

javascript - 如何使用 Firebase 按时间戳排序?

我正在尝试使用orderByChild()在Firebase中按时间戳进行排序,但它不起作用。结果似乎是按键排序的,而Firebase似乎忽略了orderByChild()。从时间上可以看出,这些结果并不是按时间戳排序的。lorem-ipsum-dolor-si-17/6/2016alas8:51:33lorem-ipsum-dolor-si193-17/6/2016alas8:51:37lorem-ipsum-dolor-si297-17/6/2016alas8:51:43lorem-ipsum-dolor-si402-17/6/2016alas8:51:38这是我获取数据的方式:l

javascript - 将对象字面量转换为排序数组

我有一个对象字面量,其中它的键的值是更多的对象,内部对象的键之一被命名为“rank”——并且有一个浮点值。我想将对象字面量转换为内部对象数组,按“rank”的值排序。输入对象:{452:{bla:123,dff:233,rank:2},234:{bla:123,dff:233,rank:1}输出数组:[{bla:123,dff:233,rank:1},{bla:123,dff:233,rank:2}] 最佳答案 例子:vardata={foo:{rank:5},bar:{rank:2},baz:{rank:8}};Javascrip

javascript - Protractor :检查数据按日期排序

我需要检查返回的数据是否按日期排序。我是这样写的:it('shouldbesortedbydate',function(){element.all(by.repeater('usersingroup.users')).then(function(users){varlastUser=users[0].element(by.id('birth-date')).getText();for(vari=1;i返回:Expected'Jan1,201500:00'tobegreaterthan'Jan1,201500:00'.我做错了什么?currentUser和lastUser似乎是对象而不是

javascript - ParseJSON 对我的 json 数据进行排序

我有一个简单的ajax调用,如下所示:vardata=jQuery.parseJSON(response.d);response.d的内容是:{"d":"[[{\"ExtensionData\":{},\"categoryId\":\"Help\"}],{\"11\":\"Thisis11\",\"10\":\"Thisis10\",\"7\":\"Thisis7\",\"6\":\"Thisis6\",\"12\":\"Thisis12\",\"5\":\"Thisis5\",\"4\":\"Thisis4\",\"2\":\"Thisis2\",\"1\":\"Thisis1\"}

JavaScript 在排序数组后返回数值而不是字符串

我正在做一个练习,提示用户输入一个姓名列表,将姓名列表存储在一个数组中,按升序对数组进行排序,然后打印姓名列表(每行一个)。当我这样做时,我看到显示的是一个数值,而不是每行一个名称。为什么会这样?varnamesArray=[];do{varnames=prompt("Enteraname:");namesArray.push(names);}while(names!="")namesArray.sort();for(varnameinnamesArray){document.write(name);} 最佳答案 当你使用这个结构时

javascript - sort(), sort(function(a,b){return a-b;}); 之间的区别和排序(函数(a,b){...})

我想了解sort()的工作原理以及我应该如何使用它。我做了一些研究(谷歌)并在stackoverflow上解决了类似的问题,但仍有一些事情对我来说不是100%清楚。到目前为止,我的理解如下:有:不带参数的sort():仅对String值的简单数组进行字母和升序排序例如//sortalphabeticallyandascending:varmyArr=["Bob","Bully","Amy"]myArr.sort()//Arraynowbecomes["Amy","Bob","Bully"]sort()withafunctionasaparameter:根据属性对数组中的对象进行排序;然

javascript - 为什么 JavaScript 的后自增运算符与 C 和 Perl 不同?

我目前正在准备JavaScript考试。我对C和Perl也有一点了解,所以我熟悉这三种语言的前缀和后缀运算符。我为它做了一个在线练习考试,我犯的一个错误是在评估以下代码时:varx=10;x+=x--;现在,我认为它会计算为19,因为它是10+10,然后减去1得到9。但我得到的反馈是它是错误的,它实际上计算为20。我认为这听起来有点可疑,所以我在HTML文档中对其进行了测试,结果又是20。然后我尝试了C和Perl中的等价物,并且都评估为19。谁能向我解释为什么JavaScript将答案计算为20而其他语言将其计算为19?我从测试中得到的答案对我来说不是太清楚:Theincrement+

javascript - 如何对数组进行排序,但排除某些元素(保持在数组中的相同位置)

这将在Javascript(jQuery)中实现,但我想该方法可以在任何语言中使用。我有一组项目,我需要进行排序。但是数组中有些项目必须保持在相同的位置(相同的索引)。有问题的数组是从的列表构建的元素,我使用附加到列表项的.data()值作为要排序的值。什么方法在这里最好?bananasorangespearsapplesgrapespineapplesvarsugarcontent=newArray('32','21','11','45','8','99');$('#fruitli').each(function(i,e){$(this).data('sugar',sugarcont